Computer systems are often interconnected by computer networks for the purpose of communicating information. As used herein, a “computer network” or a “communications network” is a group of two or more devices interconnected by one or more segments of transmission media on which communications may be exchanged between the devices. Each segment may be any of a plurality of types of transmission media, including one or more electrical or optical wires or cables made of metal and/or optical fiber, air (e.g., using wireless transmission over carrier waves) or any combination of these transmission media. Computer systems connected on such networks communicate with each other by sending information through their interconnections, often using network communication devices such as routers, switches, bridges, and hubs.
Often business organizations maintain large computer networks. Such computer networks are sometimes referred to in the art as “enterprise” networks. Because of their size and complexity, enterprise networks may be difficult to manage. Techniques currently used to monitor and manage enterprise networks include the use of tools such as, for example, network management systems and the hardware and software they control (e.g., routers, hubs, switches, and the like), and special-purpose systems such as firewalls that manage access to networks to which a firewall is coupled.
Both firewalls and network management systems allow a network user to define policies. Historically, network management and other types of management systems have managed entities individually (e.g., by setting operating parameters of devices separately). However, managing each individual entity is expensive, time consuming, and error-prone. In addition, it is easy to implement settings on one device that are inconsistent with settings on the other devices. Policy-based management has improved and simplified manual configuration of devices by allowing an administrator to define a policy and apply a rule or other information to a group of entities. The term “policy” is a general term used to describe a rule or parameter which governs an entity (e.g., a device, user, application, server, etc.).
In the case of a firewall, a policy defines, for particular network devices, types of network accesses through the firewall that are authorized and types of network accesses that are unauthorized. This policy is often referred to as a “security” policy. As mentioned above, an administrator can define a policy for the access by external systems to the enterprise network and use a firewall and/or other network devices to enforce that policy.
Network administrators typically define a network policy as a need for that policy arises. This ad-hoc method is undesirable because policies are only created by a network administrator after a security violation has already occurred. Further, a great deal of time may elapse before the administrator realizes the problem exists and determines from where in the network the problem arises. Additionally, when determining an external access policy for a large enterprise network, a network administrator may have to customize the network policy for each device or group of devices in the network.
An enterprise network is sometimes separated from the Internet or other external networks by a communication system known in the art as a firewall. As discussed above, a firewall prevents unauthorized access to or from a computer network. Firewalls may be implemented, for example, in either hardware, software, or a combination thereof. Typically, a firewall performs some type of network traffic filtering based on an access policy defined on the firewall. Such filtering may be at the network protocol level, the packet level, or the application level.
A firewall allows a network administrator to control network accesses between the enterprise and the external network by determining a policy that controls such access. Such control may be useful in attempting to prevent malicious attacks on the enterprise. For example, an administrator may create security policies that may block the network traffic based on its source, network protocol, application protocol, or other characteristics. Likewise, a network administrator may wish to prevent hosts within the enterprise from unauthorized accesses outside the enterprise. For example, a network administrator may block certain hosts from accessing external World Wide Web (WWW) sites. Although firewalls allow a network administrator to control access between the enterprise and external networks, they typically do not allow the network administrator to monitor interactions between hosts and other network devices within the enterprise itself.
Network management systems exist that can autodiscover devices in a network based on their interconnections. Such systems are useful in entity management. That is, they allow a network administrator to determine the state of a particular network device (e.g., its connection status). However, because these systems are focused on individual network devices, they are not adapted to understanding network interaction within the enterprise as a whole.
Network management systems may also allow a network administrator to group network devices based on the physical distance between devices or based on the interconnections between devices and define policies for groups of network devices. These policies generally relate to the configuration of network communication devices and relate to how they communicate.
Some network management systems include a user interface that represents network devices as icons on the screen. Icons may be grouped together based on the distance between them on the screen. By using such groupings, a network administrator may avoid defining network policy for individual network devices by defining network policy for groups of network devices. However, as mentioned above, these groupings are often based on physical distances or interconnections between network devices. Thus, the policy defined for a group may not be equally applicable to all devices within the particular group. Because group policies are defined in an ad hoc manner, some may be incorrectly applied to one or more devices.